/*权限文件*/
import router from './router'
import store from './store'
import nprogress from 'nprogress'
import 'nprogress/nprogress.css'

// 设置路由白名单
const whitelist = ['/login', '/404']
router.beforeEach(async (to, from, next) => {
    // 进度条
    nprogress.start()


    // 判断是否有token
    if (store.getters.token) {
        // 判断是否去登录页
        if (to.path === '/login') {
            // 放行到首页
            next('/')
        } else {
            // 如果没有数据才发请求
            if (!store.getters.userId) {
                // 在这里获取用户信息
                await store.dispatch('user/getUserInfo')
            }


            // 登录了去的不是登录页,就正常放行
            next()
        }
    } else {
        // 判断要去的路由在不在白名单里
        if (whitelist.includes(to.path)) {
            next()
        } else {
            // 没有登录,打回登录页
            next('/login')
        }

    }

})

// 路由跳转之后
router.afterEach((to, from) => {
    // 停止进度条
    nprogress.done()
})